// pages/login/login.js
import urlconf from '../../utils/urlconf.js'
import httpRequest from '../../utils/request.js'
const app = getApp()
Page({

    /**
     * 页面的初始数据
     */
    data: {
        source: ''
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        console.log(options);
        this.setData({
            source: options.source
        })
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },
    getPhoneNumber: function (e) {
        console.log(e)
        let _this = this;
        if (e.detail.errMsg == "getPhoneNumber:ok") {
            //校验是否过期
            wx.checkSession({
                success: function () { // session_key 未过期
                    console.log('未失效')
                    let code = wx.getStorageSync('apiCode')
                    if (code) {
                        _this.gettel(code, e, 1); //获取手机号
                    } else {
                        wx.login({
                            success: function (res) {
                                console.log('code', res)
                                if (res.code) {
                                    wx.setStorageSync('apiCode', res.code)
                                    _this.gettel(res.code, e, 2); //获取手机号
                                } else {
                                    console.log('登录失败！' + res.errMsg)
                                }
                            }
                        })
                    }
                },
                fail: function () { // session_key 已经失效
                    console.log('失效')
                    wx.login({
                        success: function (res) {
                            console.log('code', res)
                            if (res.code) {
                                wx.setStorageSync('apiCode', res.code)
                                _this.gettel(res.code, e, 2); //获取手机号
                            } else {
                                console.log('登录失败！' + res.errMsg)
                            }
                        }
                    })
                }
            })
        } else {
            // wx.showModal({
            //     title: '提示',
            //     content: '需获取信息才可进行估分',
            // })
        }
    },
    gettel: function (code, e, worked) {
        let iv = e.detail.iv;
        let enryData = e.detail.encryptedData;
        let param = {
            iv,
            enryData,
            code,
            worked
        }
        console.log(param);
        httpRequest(urlconf.getPhoneNumber, param, 'POST').then(res => {
            console.log('获取手机号result', res);
            if (res.code == 1) { //成功
                let userInfo = {
                    "userToken": res.data.token,
                    'mobile': res.data.mobile,
                    'uid': res.data.uid
                }
                wx.setStorageSync('userInfo', userInfo)
                wx.showToast({
                    title: '登录成功，点击试卷进行估分',
                    icon: 'none'
                })

                let timer = setTimeout(() => {
                    wx.navigateBack({
                        delta: this.data.source == 'ranking' ? 1 : 2
                    })
                    clearTimeout(timer);
                }, 700)
            } else {
                wx.removeStorageSync('apiCode');
                wx.removeStorageSync('userInfo');
                wx.showToast({
                    title: '登录失败,请重试',
                    icon: 'none'
                })
                console.log('登录失败');
            }
        })
    },
    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {
        let shareImgUrl = app.globalData.shareImg
        return {
            imageUrl: shareImgUrl,
            path: '/pages/index/index'
        };
    }
})